A web application is an application that is accessed via a web browser over a network, such as the Internet or an intranet. Web applications are essential tools in today's business world. For example, a salesperson can use her web browser on her personal computer to access a web application provided by her company to enter sales into a sales database. In another example, a college student can use a web browser on his personal computer to access a web application provided by his university to register for classes.
In many circumstances, a web application provider may wish to provide different versions of a web application to different groups of users. For example, a company with a multinational sales force may be wish to provide a first version of a sales-entry web application to its European salespersons and a second version of the sales-entry web application to its North American salespersons. In this example, the different versions of the web application may collect different data in order to comply with different regulations. In another example, a web application provider may wish to provide an updated version of a web application to a set of beta users while continuing to provide a current version of the web application to the general public.
In order to implement different versions of a web application, a web application provider may need to implement different versions of equivalent resources, such as software modules, images, videos, and so on. Furthermore, because the web application provider may need to implement different versions of equivalent software modules, the web application provider may need to install the different versions of the equivalent software modules on different sets of physical hosting devices. For example, the web application provider may need to install the software modules needed by a first version of the web application on a first set of physical hosting devices and may need to install the software modules needed by the second version of the web application on a second set of physical hosting devices. The web application provider may need to install the different versions of the equivalent software modules on different sets of physical hosting devices because equivalent resources associated with the different versions of the web application may have the same filenames and therefore cannot be stored at the same location within a file system directory structure.